home *** CD-ROM | disk | FTP | other *** search
- /* Reposition 320
- ** --------------
- ** This example has a mobile 320x256 screen, which is attached to the
- ** joystick.
- **
- ** To exit the example, press fire.
- */
-
- MODULE 'games','games/games'
-
- PROC main()
- DEF screen:PTR TO gamescreen, joy:LONG, loadpic:PTR TO picture
-
- IF gmsbase := OpenLibrary('GMS:GPI/Master.GPI',0)
- SetUserPrefs(0)
- IF (screen := AddScreen([TAGS,0,
- GSA_PALETTE,[ $000000,$103000,$F0C0B0,$F0A090,$D08080,$906050,$604040,$201010,
- $400000,$404040,$F0F000,$403020,$C0C000,$105000,$500010,$808000,
- $206010,$207010,$308020,$409020,$50A030,$50B040,$607070,$60C040,
- $708080,$90A0A0,$B0C0C0,$800010,$900010,$A00020,$700010,$600010 ]:LONG,
- GSA_SCRWIDTH, 320,
- GSA_SCRHEIGHT, 256,
- GSA_PLANES, 5,
- TAGEND]))
-
- IF (loadpic := LoadPic([TAGS,0,
- PCA_DATA, screen.memptr1,
- PCA_WIDTH, 320,
- PCA_HEIGHT, 256,
- PCA_AMTCOLOURS, 32,
- PCA_PALETTE, screen.palette,
- PCA_FILE, 'GMS:demos/data/PIC.Green',
- TAGEND]))
-
- ShowScreen(screen)
-
- REPEAT
- joy := ReadJoyPort(JPORT2,JT_SWITCH)
- IF (joy AND JS_RIGHT) THEN screen.scrxoffset := screen.scrxoffset+1
- IF (joy AND JS_LEFT) THEN screen.scrxoffset := screen.scrxoffset-1
- IF (joy AND JS_UP) THEN screen.scryoffset := screen.scryoffset-1
- IF (joy AND JS_DOWN) THEN screen.scryoffset := screen.scryoffset+1
- WaitVBL()
- RemakeScreen(screen)
- UNTIL !(joy AND JS_FIRE1)
-
- FreePic(loadpic)
- ENDIF
- DeleteScreen(screen)
- ENDIF
- CloseGMS()
- ENDIF
- ENDPROC
-
-